{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "\n",
    "import pandas as pd\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.preprocessing import LabelEncoder\n",
    "from sklearn.preprocessing import OneHotEncoder,Binarizer\n",
    "from sklearn.model_selection import train_test_split\n",
    "import numpy as np\n",
    "from sklearn.linear_model import LogisticRegression,LinearRegression\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from sklearn.tree import DecisionTreeClassifier\n",
    "from sklearn.metrics import accuracy_score,confusion_matrix,mean_squared_error,recall_score,roc_auc_score,precision_score,f1_score\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "import joblib\n",
    "import matplotlib.pyplot as plt\n",
    "from sklearn.metrics import classification_report\n",
    "from sklearn.metrics import RocCurveDisplay,ConfusionMatrixDisplay\n",
    "from sklearn import metrics\n",
    "from sklearn.metrics import precision_recall_curve\n",
    "from sklearn.feature_extraction.text import CountVectorizer,TfidfVectorizer\n",
    "import jieba\n",
    "from sklearn.cluster import KMeans\n",
    "from sklearn.impute import SimpleImputer\n",
    "from sklearn.svm import SVC\n",
    "from sklearn.metrics import ConfusionMatrixDisplay\n",
    "from xgboost import XGBClassifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "outputs": [
    {
     "data": {
      "text/plain": "       账户资金（元）  最后一次交易距今时间（天）  上月交易佣金（元）  累计交易佣金（元）  本券商使用时长（年）  是否流失\n0      22686.5            297     149.25    2029.85           0     0\n1     190055.0             42     284.75    3889.50           2     0\n2      29733.5            233     269.25        NaN           0     1\n3     185667.5             44     211.50    3840.75           3     0\n4      33648.5            213     353.50    2151.65           0     1\n...        ...            ...        ...        ...         ...   ...\n7038  199145.0             40     424.00    3990.50           1     0\n7039  682661.0              1     516.00    9362.90           5     0\n7040   51180.5            167     148.00    2346.45           0     0\n7041   47594.0            174     372.00    2306.60           0     1\n7042  636005.0              2     528.25    8844.50           5     0\n\n[7043 rows x 6 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>账户资金（元）</th>\n      <th>最后一次交易距今时间（天）</th>\n      <th>上月交易佣金（元）</th>\n      <th>累计交易佣金（元）</th>\n      <th>本券商使用时长（年）</th>\n      <th>是否流失</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>22686.5</td>\n      <td>297</td>\n      <td>149.25</td>\n      <td>2029.85</td>\n      <td>0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>190055.0</td>\n      <td>42</td>\n      <td>284.75</td>\n      <td>3889.50</td>\n      <td>2</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>29733.5</td>\n      <td>233</td>\n      <td>269.25</td>\n      <td>NaN</td>\n      <td>0</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>185667.5</td>\n      <td>44</td>\n      <td>211.50</td>\n      <td>3840.75</td>\n      <td>3</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>33648.5</td>\n      <td>213</td>\n      <td>353.50</td>\n      <td>2151.65</td>\n      <td>0</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>7038</th>\n      <td>199145.0</td>\n      <td>40</td>\n      <td>424.00</td>\n      <td>3990.50</td>\n      <td>1</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>7039</th>\n      <td>682661.0</td>\n      <td>1</td>\n      <td>516.00</td>\n      <td>9362.90</td>\n      <td>5</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>7040</th>\n      <td>51180.5</td>\n      <td>167</td>\n      <td>148.00</td>\n      <td>2346.45</td>\n      <td>0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>7041</th>\n      <td>47594.0</td>\n      <td>174</td>\n      <td>372.00</td>\n      <td>2306.60</td>\n      <td>0</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>7042</th>\n      <td>636005.0</td>\n      <td>2</td>\n      <td>528.25</td>\n      <td>8844.50</td>\n      <td>5</td>\n      <td>0</td>\n    </tr>\n  </tbody>\n</table>\n<p>7043 rows × 6 columns</p>\n</div>"
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.read_excel(\"C:\\\\Users\\\\Administrator\\\\Desktop\\\\月考练习算法题 (2)\\\\月考练习算法题\\\\大数据-专高六《机器学习》-第5套\\\\专高6月考-05附件\\\\第四题数据\\\\邮政证券公司人员流失表.xlsx\")\n",
    "df"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "outputs": [
    {
     "data": {
      "text/plain": "账户资金（元）          0\n最后一次交易距今时间（天）    0\n上月交易佣金（元）        0\n累计交易佣金（元）        0\n本券商使用时长（年）       0\n是否流失             0\ndtype: int64"
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.isnull().sum()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "outputs": [],
   "source": [
    "df.fillna(2000,inplace=True)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "outputs": [
    {
     "data": {
      "text/plain": "    账户资金（元）  最后一次交易距今时间（天）  上月交易佣金（元）  累计交易佣金（元）  本券商使用时长（年）  是否流失\n0   22686.5            297     149.25    2029.85           0     0\n1  190055.0             42     284.75    3889.50           2     0\n2   29733.5            233     269.25    2000.00           0     1\n3  185667.5             44     211.50    3840.75           3     0\n4   33648.5            213     353.50    2151.65           0     1",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>账户资金（元）</th>\n      <th>最后一次交易距今时间（天）</th>\n      <th>上月交易佣金（元）</th>\n      <th>累计交易佣金（元）</th>\n      <th>本券商使用时长（年）</th>\n      <th>是否流失</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>22686.5</td>\n      <td>297</td>\n      <td>149.25</td>\n      <td>2029.85</td>\n      <td>0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>190055.0</td>\n      <td>42</td>\n      <td>284.75</td>\n      <td>3889.50</td>\n      <td>2</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>29733.5</td>\n      <td>233</td>\n      <td>269.25</td>\n      <td>2000.00</td>\n      <td>0</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>185667.5</td>\n      <td>44</td>\n      <td>211.50</td>\n      <td>3840.75</td>\n      <td>3</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>33648.5</td>\n      <td>213</td>\n      <td>353.50</td>\n      <td>2151.65</td>\n      <td>0</td>\n      <td>1</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "outputs": [
    {
     "data": {
      "text/plain": "       账户资金（元）  最后一次交易距今时间（天）  上月交易佣金（元）  累计交易佣金（元）  本券商使用时长（年）\n298   291417.5             24     372.75    5015.75           3\n3318   42972.5            189     147.50    2255.25           0\n5586   65121.5            141      95.75    2501.35           2\n6654   72425.0            125     432.50    2582.50           0\n5362  174359.0             47     123.75    3715.10           5\n...        ...            ...        ...        ...         ...\n3772   28550.0            248     475.00    2095.00           0\n5191  217847.0             36     455.50    4198.30           1\n5226   47544.5            176     105.75    2306.05           0\n5390  128013.5             68     497.25    3200.15           0\n860    61157.0            143      99.00    2457.30           2\n\n[4718 rows x 5 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>账户资金（元）</th>\n      <th>最后一次交易距今时间（天）</th>\n      <th>上月交易佣金（元）</th>\n      <th>累计交易佣金（元）</th>\n      <th>本券商使用时长（年）</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>298</th>\n      <td>291417.5</td>\n      <td>24</td>\n      <td>372.75</td>\n      <td>5015.75</td>\n      <td>3</td>\n    </tr>\n    <tr>\n      <th>3318</th>\n      <td>42972.5</td>\n      <td>189</td>\n      <td>147.50</td>\n      <td>2255.25</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>5586</th>\n      <td>65121.5</td>\n      <td>141</td>\n      <td>95.75</td>\n      <td>2501.35</td>\n      <td>2</td>\n    </tr>\n    <tr>\n      <th>6654</th>\n      <td>72425.0</td>\n      <td>125</td>\n      <td>432.50</td>\n      <td>2582.50</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>5362</th>\n      <td>174359.0</td>\n      <td>47</td>\n      <td>123.75</td>\n      <td>3715.10</td>\n      <td>5</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>3772</th>\n      <td>28550.0</td>\n      <td>248</td>\n      <td>475.00</td>\n      <td>2095.00</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>5191</th>\n      <td>217847.0</td>\n      <td>36</td>\n      <td>455.50</td>\n      <td>4198.30</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>5226</th>\n      <td>47544.5</td>\n      <td>176</td>\n      <td>105.75</td>\n      <td>2306.05</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>5390</th>\n      <td>128013.5</td>\n      <td>68</td>\n      <td>497.25</td>\n      <td>3200.15</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>860</th>\n      <td>61157.0</td>\n      <td>143</td>\n      <td>99.00</td>\n      <td>2457.30</td>\n      <td>2</td>\n    </tr>\n  </tbody>\n</table>\n<p>4718 rows × 5 columns</p>\n</div>"
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X = df.iloc[:, :-1]\n",
    "y = df.iloc[:, -1]\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)\n",
    "X_train"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "outputs": [],
   "source": [
    "scaler = StandardScaler()\n",
    "X_train = scaler.fit_transform(X_train)\n",
    "X_test = scaler.transform(X_test)\n",
    "\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "F:\\python38\\lib\\site-packages\\sklearn\\model_selection\\_validation.py:425: FitFailedWarning: \n",
      "45 fits failed out of a total of 135.\n",
      "The score on these train-test partitions for these parameters will be set to nan.\n",
      "If these failures are not expected, you can try to debug them by setting error_score='raise'.\n",
      "\n",
      "Below are more details about the failures:\n",
      "--------------------------------------------------------------------------------\n",
      "45 fits failed with the following error:\n",
      "Traceback (most recent call last):\n",
      "  File \"F:\\python38\\lib\\site-packages\\sklearn\\model_selection\\_validation.py\", line 729, in _fit_and_score\n",
      "    estimator.fit(X_train, y_train, **fit_params)\n",
      "  File \"F:\\python38\\lib\\site-packages\\sklearn\\base.py\", line 1145, in wrapper\n",
      "    estimator._validate_params()\n",
      "  File \"F:\\python38\\lib\\site-packages\\sklearn\\base.py\", line 638, in _validate_params\n",
      "    validate_parameter_constraints(\n",
      "  File \"F:\\python38\\lib\\site-packages\\sklearn\\utils\\_param_validation.py\", line 96, in validate_parameter_constraints\n",
      "    raise InvalidParameterError(\n",
      "sklearn.utils._param_validation.InvalidParameterError: The 'min_samples_split' parameter of RandomForestClassifier must be an int in the range [2, inf) or a float in the range (0.0, 1.0]. Got 1 instead.\n",
      "\n",
      "  warnings.warn(some_fits_failed_message, FitFailedWarning)\n",
      "F:\\python38\\lib\\site-packages\\sklearn\\model_selection\\_search.py:979: UserWarning: One or more of the test scores are non-finite: [       nan 0.76494397 0.76494397        nan 0.76494397 0.76494397\n",
      "        nan 0.76494397 0.76494397        nan 0.78656155 0.78656155\n",
      "        nan 0.78656155 0.78656155        nan 0.78656155 0.78656155\n",
      "        nan 0.78677364 0.78677364        nan 0.785502   0.78613827\n",
      "        nan 0.78634946 0.78634946]\n",
      "  warnings.warn(\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "随机森林最优模型 RandomForestClassifier(max_depth=5, min_samples_split=3, random_state=42)\n",
      "随机森林最优参数 {'max_depth': 5, 'min_samples_leaf': 1, 'min_samples_split': 3}\n"
     ]
    }
   ],
   "source": [
    "#随机森林\n",
    "rfc = RandomForestClassifier(max_depth=2, random_state=42)\n",
    "#网格搜索参数调优\n",
    "parameters = {'max_depth': [2, 3, 5], 'min_samples_split': [1, 3, 5], 'min_samples_leaf': [1, 2, 3]}\n",
    "rfc_cv = GridSearchCV(rfc, parameters, cv=5)\n",
    "rfc_cv.fit(X_train, y_train)\n",
    "print(\"随机森林最优模型\", rfc_cv.best_estimator_)\n",
    "print(\"随机森林最优参数\", rfc_cv.best_params_)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "xgb最优模型 XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
      "              colsample_bylevel=None, colsample_bynode=0.5,\n",
      "              colsample_bytree=None, device=None, early_stopping_rounds=None,\n",
      "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
      "              gamma=None, grow_policy=None, importance_type=None,\n",
      "              interaction_constraints=None, learning_rate=0.8, max_bin=None,\n",
      "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
      "              max_delta_step=None, max_depth=None, max_leaves=None,\n",
      "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
      "              multi_strategy=None, n_estimators=None, n_jobs=None,\n",
      "              num_parallel_tree=None, random_state=None, ...)\n",
      "xgb最优参数 {'colsample_bynode': 0.5, 'learning_rate': 0.8, 'subsample': 1.0}\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "F:\\python38\\lib\\site-packages\\sklearn\\model_selection\\_validation.py:425: FitFailedWarning: \n",
      "45 fits failed out of a total of 135.\n",
      "The score on these train-test partitions for these parameters will be set to nan.\n",
      "If these failures are not expected, you can try to debug them by setting error_score='raise'.\n",
      "\n",
      "Below are more details about the failures:\n",
      "--------------------------------------------------------------------------------\n",
      "45 fits failed with the following error:\n",
      "Traceback (most recent call last):\n",
      "  File \"F:\\python38\\lib\\site-packages\\sklearn\\model_selection\\_validation.py\", line 729, in _fit_and_score\n",
      "    estimator.fit(X_train, y_train, **fit_params)\n",
      "  File \"F:\\python38\\lib\\site-packages\\xgboost\\core.py\", line 726, in inner_f\n",
      "    return func(**kwargs)\n",
      "  File \"F:\\python38\\lib\\site-packages\\xgboost\\sklearn.py\", line 1531, in fit\n",
      "    self._Booster = train(\n",
      "  File \"F:\\python38\\lib\\site-packages\\xgboost\\core.py\", line 726, in inner_f\n",
      "    return func(**kwargs)\n",
      "  File \"F:\\python38\\lib\\site-packages\\xgboost\\training.py\", line 181, in train\n",
      "    bst.update(dtrain, iteration=i, fobj=obj)\n",
      "  File \"F:\\python38\\lib\\site-packages\\xgboost\\core.py\", line 2100, in update\n",
      "    _check_call(\n",
      "  File \"F:\\python38\\lib\\site-packages\\xgboost\\core.py\", line 284, in _check_call\n",
      "    raise XGBoostError(py_str(_LIB.XGBGetLastError()))\n",
      "xgboost.core.XGBoostError: value 1.1 for Parameter colsample_bynode exceed bound [0,1]\n",
      "colsample_bynode: Subsample ratio of columns, resample on each node (split).\n",
      "\n",
      "  warnings.warn(some_fits_failed_message, FitFailedWarning)\n",
      "F:\\python38\\lib\\site-packages\\sklearn\\model_selection\\_search.py:979: UserWarning: One or more of the test scores are non-finite: [0.74035511 0.73527014 0.74438234 0.74247331 0.73950856 0.7397193\n",
      " 0.73526745 0.73145614 0.74416867 0.73484664 0.72997061 0.73802393\n",
      " 0.73993296 0.73569432 0.73760223 0.73802461 0.73548066 0.73357568\n",
      "        nan        nan        nan        nan        nan        nan\n",
      "        nan        nan        nan]\n",
      "  warnings.warn(\n"
     ]
    }
   ],
   "source": [
    "xgblr = XGBClassifier()\n",
    "parameters = {'learning_rate': [0.8, 0.9, 1.0], 'subsample': [0.8, 0.9, 1.0], 'colsample_bynode': [0.5, 1.0, 1.1]}\n",
    "xgb_cv = GridSearchCV(xgblr, parameters, cv=5)\n",
    "xgb_cv.fit(X_train, y_train)\n",
    "print(\"xgb最优模型\", xgb_cv.best_estimator_)\n",
    "print(\"xgb最优参数\", xgb_cv.best_params_)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "随机森林\n",
      "acc 0.7896774193548387\n",
      "召回率 0.40764331210191085\n",
      "XGBoost\n",
      "acc 0.7578494623655914\n",
      "召回率 0.4729299363057325\n"
     ]
    }
   ],
   "source": [
    "xgb_pred = xgb_cv.best_estimator_.predict(X_test)\n",
    "rfc_pred = rfc_cv.best_estimator_.predict(X_test)\n",
    "\n",
    "print(\"随机森林\")\n",
    "print(\"acc\", accuracy_score(y_test, rfc_pred))\n",
    "print(\"召回率\", recall_score(y_test, rfc_pred))\n",
    "print(\"XGBoost\")\n",
    "print(\"acc\", accuracy_score(y_test, xgb_pred))\n",
    "print(\"召回率\", recall_score(y_test, xgb_pred))"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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xDUWLFiAzZs3Y9GiRfjjjz9w/vx5bN++HW+88YZen61fv37o3r07li5dCgBo164dfv31V+zfvx8XL17E/PnzceLEiVrr+Pj44OzZs0hMTEReXh4qKysxevRoODs7Y8SIEThy5AhSU1MRGxuLl156CZcvX9arJiKzZOpJP0RkeHVNQq2xYsUK4e7uLqytrUV4eLjYvHmzACBu3LghhKg94beiokI888wzQqVSCblcLjw8PMT06dNrTRY+fvy4ePDBB4WdnZ2wtbUV3bt3v21C8F/9fULx32k0GvHmm28KT09PYWlpKXr06CF++OEH3etr164VgYGBwtbWVjg4OIgHHnhAnDx5Uvc6/jKhWAgh1q1bJ1QqlZBKpSI0NPSO+0ej0Qh3d3cBQCQnJ99W1759+0RISIiwtrYWDg4Oom/fvmLt2rV3/BwLFy4UPXr0uG1827ZtQqFQiPT0dFFeXi5eeOEFoVQqhaOjo5g6daqYO3durfWuXLmi278ARExMjBBCiOzsbDF27Fjh7OwsFAqF8PPzExMnThQFBQV3rImopZAIIYRp4xURERGR4fC0FBEREZkVhhsiIiIyKww3REREZFYYboiIiMisMNwQERGRWWG4ISIiIrPCcENERERmheGGiIiIzArDDREREZkVhhsiIiIyKww3REREZFb+Hx+N4qQDP4JaAAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "rfc_score = rfc_cv.predict(X_test)\n",
    "fpr, tpr, thresholds = metrics.roc_curve(y_test, rfc_score)\n",
    "roc_auc = metrics.auc(fpr, tpr)\n",
    "display = metrics.RocCurveDisplay(fpr=fpr, tpr=tpr, roc_auc=roc_auc, estimator_name='example estimator')\n",
    "display.plot()\n",
    "plt.show()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#xbgosst\n",
    "xgb_score = xgb_cv.predict(X_test)\n",
    "fpr, tpr, thr = metrics.roc_curve(y_test, xgb_score)\n",
    "roc_auc = metrics.auc(fpr, tpr)\n",
    "display = metrics.RocCurveDisplay(fpr=fpr, tpr=tpr, roc_auc=roc_auc, estimator_name='example estimator')\n",
    "display.plot()\n",
    "plt.show()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "outputs": [
    {
     "data": {
      "text/plain": "      xgb_score\n0             1\n1             0\n2             0\n3             1\n4             0\n...         ...\n2320          0\n2321          0\n2322          0\n2323          0\n2324          0\n\n[2325 rows x 1 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>xgb_score</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>2320</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2321</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2322</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2323</th>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2324</th>\n      <td>0</td>\n    </tr>\n  </tbody>\n</table>\n<p>2325 rows × 1 columns</p>\n</div>"
     },
     "execution_count": 56,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from pandas import DataFrame\n",
    "result = DataFrame({\"xgb_score\":xgb_score})\n",
    "result"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "outputs": [
    {
     "data": {
      "text/plain": "2325"
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sqlalchemy import create_engine\n",
    "conn = create_engine(\"mysql+pymysql://root:123456@localhost/db_16?charset=utf8mb4\")\n",
    "result.to_sql(\"test2222\",con=conn, if_exists='replace',\n",
    "                                               index=False)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}